Houdini Configuration ====================== > Analyze houdini scene and save the output as task.json, asset.json,upload.json and tips.json. ### 1.task.json > File to save the analysis result of the scene, including scene name, cg software version, render settings, etc. **task.json** ```json { "scene_info_render": { "rop_node": [ { "node": "/out/mantra1", "frames": "1-10[1]", "option": "-1", "render": "1", "height": "720", "width": "1280" } ], "geo_node": [], "distributedsim_node": [ { "node": "/out/distributedsim", "output_driver": "/obj/distribute_flattank/save_slices", "render": "0", "simControlName": "/obj/flattank_sim/DISTRIBUTE_flattank_CONTROLS", "output_file": "/geo/flip_test_slice4.flattank.0.1.bgeo.sc", "num_slices": "4", "option": "1", "frames": "1-240[1]", "sliceType": "particle" } ] }, "task_info": { "enable_layered":"1", "cg_id": "2004", "ram": "64", "os_name": "1", "render_layer_type": "0", "is_distribute_render": "1", "input_cg_file": "D:/gitlab/renderSDK/scenes/houdini_test/sphere.hip", "job_stop_time": "28800", "user_id": "10000031", "pre_frames": "000", "platform": "2", "is_picture": "0", "project_id": "3316", "channel": "4", "tiles_type": "block", "tiles": "1", "project_name": "dasdd", "distribute_render_node": "3", "frames_per_task": "1", "stop_after_test": "2", "input_project_path": "", "task_id": "440149", "task_stop_time": "86400", "time_out": "12", "graphics_cards_num": "2", "hardwareConfigId": "" }, "software_config": { "cg_version": "16.5.268", "cg_name": "Houdini", "plugins": {} } } ``` **task.json Parametric Interpretation** parameter | type | | description | example ---|---|---|---|--- software_config | object | Y | environment(cg software, version and plugins, etc.) | refer to [software_config](#software_config) task_info | object | Y | render settings(priority frames, render range, etc.) | refer to [task_info](#task_info) scene_info_render | object | Y | analysis result(render node, output, etc.) | refer to [scene_info_render](#scene_info_render) **software_config** parameter | type | description | example ---|---|---|--- cg_name | string | software | "Houdini" cg_version | string | software version | "16.5.268" plugins | object | plugin{name, version} | {} **task_info** | parameter | type | Is it necessary | description | default | example | | ---------------------- | ------ | --------------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | | graphics_cards_num | string | Y | 1: open single card rendering 2: open dual card rendering | "2" | "2" | | enable_layered | string | Y | render layer mode,"0":off, "1":on | "0" | "1" | | cg_id | string | Y | software id."2004": Houdini | | "2013" | | ram | string | Y | ram: 64 / 128 | "64" | "64" | | os_name | string | Y | Rendering machine operating system: "0":Linux; "1": Windows | "1" | "1" | | render_layer_type | string | N | render layer mode(only support maya): "0":renderlayer方式 "1":rendersetup方式 | "0" | "0" | | is_distribute_render | string | N | distributed render mode,"0":off, "1":on | "0" | "0" | | input_cg_file | string | Y | input file path | | "E:/copy/DHGB_sc05_zhuta_610-1570_v0102.project" | | input_project_path | string | Y | project path, could be empty | " " | | | job_stop_time | string | Y | Set the frame timeout time, will only affect the current frame, unit seconds | "259200" | "28800" | | user_id | string | Y | user id | | | | pre_frames | string | Y | Priority rendering (priority frames are not recommended to customize multiple individual frames) | "000" | "000: 1,3-4 [1]" means: Priority rendering first frame: No Priority rendering middle frame: No Priority rendering last frame: No Priority rendering custom frame: 1,3-4 [1] | | platform | string | Y | submit platform : "2": "www2", "3": "www3", "6": "www4", "21": "gpu", | | "2" | | is_picture | string | Y | "0: Effect Chart "1": Animation Chart | "0" | "0" | | project_id | string | Y | project id | " " | "200953" | | project_name | string | Y | project name | " 0" | "Project1" | | channel | string | Y | 1:Web local analysis (animation deduction); 2:web cloud analysis; 3:Rendering plugin submission; 4:API/SDK submission; 8:Animation plugin submission | "4" | "4" | | tiles_type | string | Y | "block, strip" | "block" | "block" | | tiles | string | Y | tile number, 1 for single node, greater than 1 for tiles rendering(multi-nodes) | "1" | "1" | | distribute_render_node | string | N | nodes number for distributed rendering | "3" | "3" | | frames_per_task | string | Y | frames per task | "1" | "1" | | stop_after_test | string | Y | "1":pause after priority render, "2":continue after priority render (default "2") | "2" | "2" | | task_id | string | Y | task id | | | | task_stop_time | string | Y | Large task timeout stops in unit seconds, "0" means unlimited | "0" | "86400" | | time_out | string | Y | Overtime reminder time, unit: sec | "43200" | "43200" | > Note:The distributed rendering machine (distribute_render_node) will only take effect if the distributed storage parameter (distribute_render_node) is set to on. **scene_info_render** parameter | type | description | example ---|---|---|--- rop_node | object | Render node | geo_node | object | Solve node | distributedsim_node | object | Distributed node | **scene_info_render.rop_node和geo_node** parameter | type | Is it necessary | description | example ---|---|---|---|--- node | string | Y | Node full path name | "/out/mantra1" frames | string | Y | Frame number range | "1-10[1]" option | string | Y | Task type:
-1: rendering;
0: general solution;
1: distributed solution; | "-1" render | string | Y | Whether to activate rendering:
1: Render (solve) the node;
0: The node does not participate in rendering (solve) | "1" height | string | N | Camera height | “720” width | string | N | Camera width | “1280” **scene_info_render.distributedsim_node对象解析** | parameter | type | Is it necessary | description | example | | -------------- | ------ | --------------- | ------------------------------------------------------------ | ------------------------------------------------ | | node | string | Y | Node full path name | "/out/distributedsim" | | output_driver | string | N | Solve node path | "/obj/distribute_flattank/save_slices" | | render | string | Y | Whether to activate rendering:
1: Render (solve) the node;
0: The node does not participate in rendering (solve) | "0" | | simControlName | string | N | Solve node name | "/obj/flattank_sim/DISTRIBUTE_flattank_CONTROLS" | | output_file | string | N | Output file | "/geo/flip_test_slice4.flattank.0.1.bgeo.sc" | | num_slices | string | N | Block calculation of the total number of blocks (the total cannot exceed 16) | "4" | | option | string | Y | Task type:
-1: rendering;
0: general solution;
1: distributed solution; | "1" | | frames | string | Y | Solve Frame Range | "1-240[1]" | | sliceType | string | N | Slice type | "particle" | ### 2.upload.json > File to save asset info **upload.json example** ```json { "asset": [ { "local": "D:/gitlab/renderSDK/scenes/houdini_test/sphere.hip", "server": "/D/gitlab/renderSDK/scenes/houdini_test/sphere.hip" } ] } ``` **upload.json** parameter | type | description | example ---|---|---|--- asset | object | Asset path information to be uploaded | refer to [asset](#asset) **asset** parameter | type | description | example ---|---|---|--- local | string | local path of asset | "D:/gitlab/renderSDK/scenes/houdini_test/sphere.hip" server | string | Relative path on the server side, generally consistent with local | "/D/gitlab/renderSDK/scenes/houdini_test/sphere.hip" ### 3.tips.json > File to save errors, warnings ```json { "50001":[ "Nodes: /obj/flattank_fluid/compressed_cache/file_mode File name: $HIP/geo/$HIPNAME.$OS.$F.bgeo.sc miss file: /geo/flip_test_slice4.compressed_cache.1.bgeo.sc " ] } ```